-
Notifications
You must be signed in to change notification settings - Fork 139
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor: unify slash/prefix command signature evaluation #1116
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just several nits. Looks good overall, I especially liked that you moved some parsers to utils.py
, this way they can be easily used by ext-packages.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lgtm
Summary
This PR makes slash command signature evaluation use the existing prefix command mechanisms (notably,
utils.evaluate_annotation
), instead of relying ontyping.get_type_hints
which has historically been somewhat inconsistent.There aren't any immediate issues with the previous code; this change is in preparation for Python 3.12 adjustments in the near future. Right now, this shouldn't have any effect in practice.
It may look complicated, but it's really just moving around different parts of the code to new locations and dropping
commands.params.signature()
in favour ofutils.get_signature_parameters()
.Checklist
pdm lint
pdm pyright